package com.junko.service.back;


import com.junko.core.base.BaseService;
import com.junko.model.back.Module;
import com.junko.model.back.ZtreeNode;

import java.util.List;

public interface IModuleService extends BaseService<Module> {
    /**
     * 根据系统ID查询顶级模块
     *
     * @return
     */
    List<Module> findTopParentsBySystemId(Integer systemId);

    /**
     * 根据父模块ID查询子模块
     *
     * @param parentId
     * @return
     */
    List<Module> findChild(Integer parentId);

    /**
     * 获取子节点数据
     *
     * @param systemId
     * @param parentId
     * @return
     */
    List<ZtreeNode> childNodeData(String systemId, Integer parentId);

    /**
     * 保存
     *
     * @param pId     父节点ID
     * @param name    名称
     * @param orderId 编号
     * @return
     */
    Integer save(Integer pId, String name, int orderId);

    /**
     * 更新
     *
     * @param id   id
     * @param pId  父节点ID
     * @param name 名称
     */
    boolean update(Integer id, Integer pId, String name);

    /**
     * 删除
     *
     * @param id id
     * @return
     */
    boolean delete(Integer id);
}